home *** CD-ROM | disk | FTP | other *** search
/ The PC-SIG Library 10 / The PC-Sig Library - Shareware for the IBM PC and Compatibles (PC-SIG)(Tenth Edition Disks 1-2804)(1991).iso / PC_SIGCD / 20 / 5 / DISK2058.ZIP / UNFAST.EXE / DRECTIVE.HLP < prev    next >
Text File  |  1980-01-01  |  6KB  |  173 lines

  1. #DEBUG      #DEBUG ON/OFF
  2.  
  3. All commands compiled while DEBUG is on will call the current
  4. ON DEBUG statment (by default the ON DEBUG statement tests the break key).
  5.  
  6. Note ! Each line compiled while debug is on will use an extra 5 bytes.
  7. #ENDCODE    #ENDCODE
  8.  
  9. Artificial end of file marker.
  10.  
  11. Note ! ENDCODE stops compiling everything, simulates end of file.
  12. #ENDIF      #ENDIF
  13.  
  14. Tells FAST that the previous #IF has ended.
  15. #ENTRY      #ENTRY
  16.  
  17. Sets the entry point of the program, instead of the very first line of code.
  18. #ERRORS     #ERRORS ON/OFF
  19.  
  20. Any FAST commands that include ERROR checking set the ERROR variable (0 for no
  21. error). While #ERRORS ON, these commands will also call the current ON ERROR
  22. routine (if ERROR<>0).
  23.  
  24. Example.
  25.  
  26.     a) #ERRORS OFF
  27.        OPEN #1,"pu.cfg"
  28.        IF ERROR THEN ERROR ;If there was an error call ERROR.
  29.  
  30.  or b) #ERRORS ON
  31.        OPEN #1,"pu.cfg"    ;If error then automatically ERROR.
  32. #IF         #IF n
  33.  
  34. If expression n (constants only) is true (not 0) then the commands until the
  35. next #ENDIF are compiled, when n=0 all the statements are ignored until the
  36. #ENDIF.
  37. #IF can be nested to a maximum of 20 levels.
  38.  
  39. Example.
  40.  
  41. #IF ledger
  42.     #INCLUDE gledger.f
  43.     #IF charts
  44.         #INCLUDE charts.f
  45.     #ENDIF
  46. #ENDIF
  47. #INCLUDE    #INCLUDE filename.f
  48.  
  49. Tells FAST to compile another source file within the current file.
  50. The full filename and extension must be specified, drive and path are optional.
  51.  
  52. Note ! Every file included uses 10k (default buffer size) while being compiled,
  53.        this memory is freed when each file finishes being compiled.
  54. #INPEND     #INPEND=b
  55.  
  56. Changes the default end character for the INPUT command.
  57. If INPUTS is used only to enter filenames then #INPEND=0 would automatically
  58. make all strings entered ASCIIZ strings.
  59.  
  60. Notes ! b must be a constant.
  61.       ! The default end character is 13 (CR).
  62.       ! Only the last #INPEND setting is used.
  63. #LONG       + #LONG
  64.  
  65. Sets compiling of IF THEN ELSE statements to long mode.
  66. Every IF THEN ELSE will use NEAR jumps rather than SHORT jumps.
  67.  
  68. The opposite to #LONG is #SHORT.
  69. #PARA       + #PARA
  70.  
  71. Aligns the code address to the next paragraph (multiple of 16 bytes).
  72.  
  73. Should only be used when data must be stored on a paragraph boundary.
  74. #PROTECT    #PROTECT
  75.  
  76. Include the command #PROECT in any source file and it will be protected to
  77. the extent where it will check if it (the .COM file) has been corrupted or
  78. tampered with by a virus. If it has then a warning will appear on the
  79. screen when the program is run.
  80.  
  81. To eradicate your computer from the virus you will need to find the correct
  82. vaccination program for your virus(es) then once all backups are restored,
  83. recompile every FAST program. You should check all .COM and .EXE files for
  84. viruses at the same time.
  85. #SETDOS     #SETDOS v.xx
  86.  
  87. Sets the required DOS version needed to run the compiled program to any
  88. specified version. Any version set below the current version will be ignored.
  89.  
  90. The current minimum is 2.00
  91. #SHORT    + #SHORT
  92.  
  93. Sets compiling of IF THEN ELSE statements to short mode.
  94. Every IF THEN ELSE will use SHORT jumps rather than NEAR jumps.
  95.  
  96. #SHORT should be used wherever size is restricted and speed is needed.
  97. #LONG is still fast but #SHORT will remove another 2 instructions of more from
  98. IF THEN ELSE commands.
  99.  
  100. The opposite to #SHORT is #LONG.
  101. #STACK    + #STACK MEMORY n
  102.  
  103. Sets the stack memory (in bytes) available for the compiled program.
  104.  
  105. Notes ! n must be a constant.
  106.       ! The default stack memory is 1024 bytes.
  107.       ! Only the last #STACK setting is used.
  108. #TRACE      #TRACE ON/OFF
  109.  
  110. Sets the trace mode.
  111.  
  112. If trace is turned on then all lines compiled after the #TRACE ON until when
  113. trace is turned off are made traceable.
  114.  
  115. To trace a program:
  116.  
  117.     1) Insert #TRACE directives into the source code where you want to see the
  118.        code running then compile it.
  119.  
  120.     2) Type "FASTT program" at the DOS prompt to start.
  121.  
  122.  
  123. Note ! The file called source.FT is the FAST TRACE file.
  124.        A program can only be traced if an FT file exists.
  125.  
  126.      ! Each line compiled while trace is on will use an extra 1 byte.
  127. #WINDOW     #WINDOW MEMORY n
  128.  
  129. Sets the amount of memory (in bytes) available for windows.
  130. If no windows are used, FAST automatically sets window memory to 0.
  131.  
  132. Notes ! n must be a constant.
  133.       ! The default window memory is 1500 bytes.
  134.       ! Only the last #WINDOW setting is used.
  135. COMPILER DIRECTIVES
  136. ===================
  137. A compiler directive can tell the compiler to set options and compile bits of
  138. program optionally or include other files.
  139.  
  140. Compiler directives are treated the same as commands by the compiler, read the
  141. following examples to see how they are treated...
  142.  
  143. Examples.
  144.  
  145. IF key='t' THEN #TRACE ON       ;This would tell the compiler to set the trace
  146.                                  option on regardless of whether key='t'.
  147.                                  The same as "IF key='t' THEN NULL"
  148.                                              "#TRACE ON           ".
  149.  
  150. #SHORT      ;This option would stay on until turned off (in the case of #SHORT
  151.             it is turned off at the start of each #INCLUDE file and restored to
  152.             its orignal state when compiling of an include file finishes).
  153.  
  154. Notes:      +   represents a directive which is considered ADVANCED.
  155.             $$$ represents a directive which is not working yet - work needed.
  156. Compiler Directive Defaults
  157. ---------------------------
  158. The following is a list of how FAST is setup before compiling starts:
  159.  
  160.     #DEBUG OFF
  161.     #ENTRY
  162.     #ERRORS ON
  163.     #INPEND
  164.     #SETDOS 2.00
  165.     #STACK MEMORY 1024  ;Set by FAST /M
  166.     #TRACE OFF
  167.     #WINDOW MEMORY 1500 ;Set by FAST /M (if windows not used: #WINDOW MEMORY 0)
  168.  
  169. The following is a list of how FAST is setup before compiling each file:
  170. (note options are restored to their original setting after including a file)
  171.  
  172.     #LONG
  173.